_HEAP

//0x138 bytes (sizeof) struct _HEAP { struct _HEAP_ENTRY Entry; //0x0 ULONG SegmentSignature; //0x8 ULONG SegmentFlags; //0xc struct _LIST_ENTRY SegmentListEntry; //0x10 struct _HEAP* Heap; //0x18 VOID* BaseAddress; //0x1c ULONG NumberOfPages; //0x20 struct _HEAP_ENTRY* FirstEntry; //0x24 struct _HEAP_ENTRY* LastValidEntry; //0x28 ULONG NumberOfUnCommittedPages; //0x2c ULONG NumberOfUnCommittedRanges; //0x30 USHORT SegmentAllocatorBackTraceIndex; //0x34 USHORT Reserved; //0x36 struct _LIST_ENTRY UCRSegmentList; //0x38 ULONG Flags; //0x40 ULONG ForceFlags; //0x44 ULONG CompatibilityFlags; //0x48 ULONG EncodeFlagMask; //0x4c struct _HEAP_ENTRY Encoding; //0x50 ULONG PointerKey; //0x58 ULONG Interceptor; //0x5c ULONG VirtualMemoryThreshold; //0x60 ULONG Signature; //0x64 ULONG SegmentReserve; //0x68 ULONG SegmentCommit; //0x6c ULONG DeCommitFreeBlockThreshold; //0x70 ULONG DeCommitTotalFreeThreshold; //0x74 ULONG TotalFreeSize; //0x78 ULONG MaximumAllocationSize; //0x7c USHORT ProcessHeapsListIndex; //0x80 USHORT HeaderValidateLength; //0x82 VOID* HeaderValidateCopy; //0x84 USHORT NextAvailableTagIndex; //0x88 USHORT MaximumTagIndex; //0x8a struct _HEAP_TAG_ENTRY* TagEntries; //0x8c struct _LIST_ENTRY UCRList; //0x90 ULONG AlignRound; //0x98 ULONG AlignMask; //0x9c struct _LIST_ENTRY VirtualAllocdBlocks; //0xa0 struct _LIST_ENTRY SegmentList; //0xa8 USHORT AllocatorBackTraceIndex; //0xb0 ULONG NonDedicatedListLength; //0xb4 VOID* BlocksIndex; //0xb8 VOID* UCRIndex; //0xbc struct _HEAP_PSEUDO_TAG_ENTRY* PseudoTagEntries; //0xc0 struct _LIST_ENTRY FreeLists; //0xc4 struct _HEAP_LOCK* LockVariable; //0xcc LONG (*CommitRoutine)(VOID* arg1, VOID** arg2, ULONG* arg3); //0xd0 VOID* FrontEndHeap; //0xd4 USHORT FrontHeapLockCount; //0xd8 UCHAR FrontEndHeapType; //0xda struct _HEAP_COUNTERS Counters; //0xdc struct _HEAP_TUNING_PARAMETERS TuningParameters; //0x130 };